Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Выборка последних сообщений для каждой ветки дискуссии одним запросом (Юрик)
Author Message
Юрик
Участник форума



Joined: 21 Nov 2003
Posts: 49
Карма: 3
   поощрить/наказать

Location: Питер

PostPosted: Mon Feb 20, 2006 12:00 am (написано за 7 минут 18 секунд)
   Post subject: Выборка последних сообщений для каждой ветки дискуссии одним запросом
Reply with quote

Здравствуйте,

Есть MySQL-таблица примерно такой структуры:

CREATE TABLE `docoborot_guestbook` (
  `id` int(11) unsigned NOT NULL auto_increment,
  `username` varchar(50) NOT NULL default '',
  `userid` int(11) unsigned NOT NULL default '0',
  `mess_title` varchar(255) NOT NULL default '',
  `message` mediumtext NOT NULL,
  `posttime` int(11) unsigned NOT NULL default '0',
  `mess_group_id` int(11) unsigned NOT NULL default '0',
) TYPE=MyISAM;

mess_group_id - id-шник ветки дискуссии
posttime - время создания сообщения
Самостоятельной таблицы с дискуссиями как таковой нет, и ввиду констрктивных особенностей модуля вводить её очень нежелательно

Вопрос:
можно ли одним запросом, не прибегая к выборке из других таблиц, вывести только записи, соответствующие последним сообщениям в ветках дискуссии, т.е. только те записи, у которых максимальный posttime для данного mess_group_id ?

я пробовал так:
Code (SQL): скопировать код в буфер обмена
SELECT MAX(posttime) AS posttime, mess_group_id, mess_group_prefix, message, mess_title, username, userid FROM guestbook GROUP BY mess_group_id ORDER BY posttime DESC LIMIT $lim
"MAX(posttime) AS posttime" выбирается правильно, а вот все остальные выбираемые поля соответствуют "нижнему" сообщению в дискуссии, а не верхнему
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML